import Vue from "vue"
import axios from "axios"
import {
  Toast
} from "vant"

//设置根路径
axios.defaults.baseURL = "http://itfly.vip:8888"
// export default axios
//这种方式引入过于频繁 而且只能在引用的组件里面用


//考虑到接口可能发生变化，暴露的只是一个axios 
//只需要在入口文件里面引入一次就行
//调用：this.$http.get
// Vue.prototype.$http = axios
//别的组件可能也会要用到 想要通用 挂在原型的上面

//axios里面的响应拦截
//请求中间件的相应处理
axios.interceptors.response.use((res) => {
  //这里可以拿到所有请求返回的数据
  // console.log(res);
  //只返回里面的某一段
  //提前获取数据 请求到数据之前先做处理
  return res
}, err => {
  Toast(err)
  Promise.reject(err)
})



//更加灵活，暴露对象 里面设置方法 想用就用
//在这里加接口
Vue.prototype.$http = {
  async getlunbo(params) {
    //有参携带，无参放空
    return await axios.get("/api/getlunbo", params)
  },
  async getgrids(params) {
    return await axios.get("/api/grids", params)
  },
  async getnewslist(id) {
    return await axios.get("/api/getnewslist", id);
    // console.log(res);
  },
  async getnewsinfo(id) {
    return await axios.get("/api/getnew/" + id)
  },
  async getcomments({
    id,
    pageNo,
    pageSize
  }) {
    // console.log(id,
    //   pageNo,
    //   pageSize);
    return await axios.get(`/api/getcomments/${id}?pageindex=${pageNo}&limit=${pageSize}`)
  },
  async sendComment({
    id,
    content
  }) {
    return await axios.post(`/api/postcomment/${id}`, {
      content
    })
  },
  async getImgCategory() {
    return await axios.get("/api/getimgcategory/")
  },
  async getImages(id) {
    return await axios.get("/api/getimages/" + id)
  },
  async getImageInfo(id) {
    return await axios.get("/api/getimageinfo/" + id)
  },
  async getThumbImages(id) {
    return await axios.get("/api/getthumimages/" + id)
  },
  async getGoodsList(number) {
    return await axios.get(`/api/getgoods?pageindex=${number}`)
  }
}
